package com.csun.cmny.provider.service;

import com.csun.cmny.core.support.IService;
import com.csun.cmny.provider.model.domain.DmcPropertyManagement;
import com.csun.cmny.provider.model.dto.propertyManagement.*;
import com.csun.cmny.provider.model.vo.propertyManagement.PropertyDataVo;
import com.csun.cmny.provider.model.vo.propertyManagement.PropertyManagementDeviceVo;
import com.csun.cmny.provider.model.vo.propertyManagement.PropertyManagementStausVo;

import java.util.Date;
import java.util.List;

public interface DmcPropertyManagementService extends IService<DmcPropertyManagement> {
    int saves(List<DmcPropertyManagement> propertyManagements);

    List<PropertyManagementDeviceVo> selectQuery(ProperManagementSelectDto properManagementSelectDto);

    int deleteManagements(List<Long> deviceIds);


    List<PropertyDataVo> selectDeviceData(SelectDeviceDataDto selectDeviceDataDto);

    int addDeviceAndPropertyManagement(PropertyManagementDeviceSaveDto propertyManagementDeviceSaveDto);

    int updateDevice(PropertyManagementDeviceUpdateDto propertyManagementDeviceUpdateDto);

    List<DmcPropertyManagement> selectByIds(List<Long> ids);

    int delivery(DeviceDeliveryDto deviceDeliveryDto, Date date);

    List<PropertyManagementStausVo> selectactivateBydiveceIds(List<Long> deviceIds);

    int sendBack(List<Long> deviceIds);
}
